/**
 * Created by lby on 2018/6/11.
 */

$(function () {
    load();
});

function load() {
    $('#exampleTable')
        .bootstrapTable(
            {
                contentType: "application/x-www-form-urlencoded",
                method : 'POST', // 服务器数据的请求方式 get or post
                url : ctxPath +  "log/list", // 服务器数据的加载地址
                striped : true, // 设置为true会有隔行变色效果
                dataType : "json", // 服务器返回的数据类型
                pagination : true, // 设置为true会在底部显示分页条
                singleSelect : true, // 设置为true将禁止多选
                iconSize : 'outline',
                sortable: true,//是否启用排序
                pageSize : 14, // 如果设置了分页，每页数据条数
                pageList: [14, 50, 100], //可供选择的每页的行数（*）
                pageNumber : 1, // 如果设置了分布，首页页码
                //search : true, // 是否显示搜索框
                showColumns : true, // 是否显示内容下拉框（选择显示的列）
                sidePagination : "server", // 设置在哪里进行分页，可选值为"client" 或者
                showRefresh: true,//显示刷新按钮
                clickToSelect: true,//点击选中checkbox
                showToggle:true,

                queryParams: function (params) {
                    return {
                        limit: params.limit,
                        offset: params.offset,
                        name: $('#searchName').val(),
                        sort: 'create_time',
                        order: 'desc',
                        operation: $("#searchOperation").val(),
                        username: $("#searchUsername").val()
                    };
                },

                columns: [
                    {
                        checkbox: true
                    },
                    {
                        field: 'id', // 列字段名
                        title: '序号', // 列标题
                        visible: false
                    },
                    {
                        field: 'userId',
                        title: '用户Id',
                        visible: false,
                    },
                    {
                        field: 'username',
                        title: '用户名',
                        width: 30
                    },
                    {
                        field: 'operation',
                        title: '操作',
                        width: 30
                    },
                    {
                        field: 'time',
                        title: '用时',
                        width: 30
                    },
                    {
                        field: 'method',
                        title: '方法',
                        width: 100
                    },
                    {
                        field: 'type',
                        title: '类型',
                        width: 30
                    },
                    {
                        field: 'ip',
                        title: 'IP地址',
                        width: 50
                    },
                    {
                        field: 'createTime',
                        title: '创建时间',
                        formatter: function (value, row, index) {
                            return customDateChange.DateTimeFormat(value)
                        },
                        width: 50
                    },
                    {
                        field: 'detail',
                        title: '详细',
                        width: 100
                    }]
            });
}

function reLoad() {
    $('#exampleTable').bootstrapTable('refresh');
}

/**
 * 清空
 */
function delAll(id)
{
    layer.confirm("确认删除一个月前的数据吗?", {
        btn : [ '确定', '取消' ]
    }, function() {
        $.ajax({
            type : 'POST',
            url : ctxPath +  'log/delAll',
            success : function(r) {
                if (r.code == 200) {
                    layer.msg("操作成功");
                    reLoad();
                } else {
                    layer.msg(r.message);
                }
            }
        });
    });
}

/**
 * 详细
 * @param id
 */
function detail(id) {

    if(id == null || id == "") {
        var rows = $('#exampleTable').bootstrapTable('getSelections'); // 返回所有选择的行，当没有选择的记录时，返回一个空数组
        if (rows.length == 0) {
            layer.msg("请选择要修改的数据");
            return;
        }
        if (rows.length > 1) {
            layer.msg("不能选择多条数据");
            return;
        }
        id = rows[0]['id'];
    }

    layer.open({
        type : 2,
        title : '日志详情',
        maxmin : true,
        shadeClose : false,
        area : [ '800px', '520px' ],
        content : ctxPath +  'log/detail/' + id
    });
}